(0) Obligation:

Runtime Complexity TRS:
The TRS R consists of the following rules:

lookup(Cons(x', xs'), Cons(x, xs)) → lookup(xs', xs)
lookup(Nil, Cons(x, xs)) → x
run(e, p) → intlookup(e, p)
intlookup(e, p) → intlookup(lookup(e, p), p)

Rewrite Strategy: INNERMOST

(1) InfiniteLowerBoundProof (EQUIVALENT transformation)

The loop following loop proves infinite runtime complexity:
The rewrite sequence
intlookup(e, p) →+ intlookup(lookup(e, p), p)
gives rise to a decreasing loop by considering the right hand sides subterm at position [].
The pumping substitution is [ ].
The result substitution is [e / lookup(e, p)].

(2) BOUNDS(INF, INF)